package com.xiaoh.dormitoryrepairreportbackend.model.dto.user;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;

/**
 * 用户查询请求
 * 支持游标分页和页码显示的混合模式
 */
@Data
@Schema(description = "用户查询请求")
public class UserQueryRequest implements Serializable {

    @Schema(description = "账号")
    private String accountName;

    @Schema(description = "昵称")
    private String nickName;

    @Schema(description = "邮箱")
    private String email;

    @Schema(description = "手机号")
    private String phoneNumber;

    @Schema(description = "用户类型(1:学生, 2:维修工, 3:管理员)")
    private Integer userType;

    @Schema(description = "页面大小", example = "10")
    private Integer pageSize = 10;

    @Schema(description = "当前页码，用于前端分页组件显示", example = "1")
    private Long current = 1L;

    @Schema(description = "游标ID，用于游标分页查询（性能优化）")
    private Long lastId;

    private static final long serialVersionUID = 1L;
}
